The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for efficiently debugging software code.
“Infrastructure as a service” (IaaS) cloud computing paradigm has changed the way information technology (IT) services are managed and delivered to the end consumer. In such a cloud environment, the cloud-service provider exposes application programming interfaces (APIs) and an end user makes use of these APIs to request for virtual server resources. The virtual servers are always provisioned with a specific operating system and in many situations even with a complete application stack over the operating system. Access to the virtual machine is usually enabled via secure shell (SSH) or X-Windows™ like interface, not a console. Existing remote management consoles are not designed to operate in a cloud kind of environment.
It has been often observed in the cloud environments that virtual servers become inaccessible because of various system level problems, namely kernel incompatibility, wrong boot-sequence such as incorrect startup sequence of system services, bad system or application configuration, etc. This renders the end user completely helpless as the user can neither determine the problem nor fix it. This makes cloud-environments unsuitable for system development and testing purposes. In addition, it also makes the cloud service expensive and inefficient.